<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>

  <script>
    /* 
    then()的返回一个新的promise对象
    then返回的promise的结果状态由什么决定?
      then指定的回调函数执行的结果决定
      1. 抛出错误
      2. 返回一个失败的promise
      3. 返回一个成功的promise
      4. 返回其它值(包含没有return)
      5. 返回一个pending状态的promise
    then支持链式调用
    */

    new Promise((resolve, reject) => {
      // resolve(1)
      reject(2)
    }).then(
      value => {
        console.log('onResolved1', value)
      },
      reason => {
        
      }
    ).then(
      value => {
        console.log('1', value)  // 1
      },
      reason => {
        console.log('2', reason) // 2
      }
    )

    // then()方法开始返回的promise总是一个pending状态的promise
    // 只有指定的回调执行之后, 才会改状态

  </script>
</body>
</html>